The present invention relates in general to searching for data available on the Internet and, in particular, to methods and apparatus for serving (i.e. delivering) a web page to a client device based on a printed publication.
A person reading a printed publication, such as a book or magazine article, may want more information on a particular topic. Typically, people who want to find information on the Internet use a search engine. A search engine allows a user to do a key word search for web pages containing information of interest. However, such searching is often frustrating. After a long list of potential web sites is compiled by the search engine, the searcher must wander from page to page manually searching for information. This process is time consuming. In addition, traditional web searches do not include a search of printed publications.
Often, people reading a printed publication are directed to a particular web page where more information specifically selected by the author or the publisher can be found. One way to accomplish this is to print a Uniform Resource Locator (URL) in the printed publication (e.g., www.publisher.com/booktitle/moreinfo). Another mechanism for directing a reader to a web page is to print a barcode in the printed publication. The reader then scans the barcode, and associated software directs a connected computer to the appropriate web page. However, placing a large number of URL""s and/or barcodes in a printed publication is distracting to the reader and consumes space in the printed publication otherwise reserved for content. In addition, typing long URL""s is cumbersome, and many people do not have a barcode reader connected to their computer.
In accordance with one aspect of the invention, a method of delivering a web page to a client device is provided. The method comprises the step of receiving first print data from a first publisher and second print data from a second publisher. The first print data is indicative a first printed publication, and the second print data is indicative of a second printed publication. The first print data is different than the second print data, and the first publisher is different than the second publisher. The method further comprises the step of generating a search index from the first print data and the second print data. The search index facilitates full-text searching of the first print data and the second print data. Still further, the method comprises the step of receiving a first plurality of publication links from a first link administrator authorized by the first publisher. Each of the first plurality of publication links associates each of a first plurality of publication hit specifications with each of a first plurality of network addresses. Each of the first plurality of publication hit specifications identifies a portion of the first print data. Similarly, the method comprises the step of receiving a second plurality of publication links from a second link administrator authorized by the second publisher. Each of the second plurality of publication links associates each of a second plurality of publication hit specifications with each of a second plurality of network addresses. Each of the second plurality of publication hit specifications identifies a portion of the second print data. The first plurality of publication links are different than the second plurality of publication links. Preferably, the first link administrator lacks authorization to submit publication links associating a publication hit specification from the second plurality of publication hit specifications with any network address. Similarly, the second link administrator preferably lacks authorization to submit publication links associating a publication hit specification from the first plurality of publication hit specifications with any network address. The method further comprises the steps of receiving a search query from the client device via a network, and correlating the query to at least one publication hit specification contained in the first plurality of publication hit specifications and the second plurality of publication hit specifications based on the search index. Still further, the method comprises the step of determining a target network address contained in the first plurality of network addresses. The target network address is associated with at least one publication hit specification by the first plurality of publication links. In addition, the method comprises the step of transmitting data related to the target network address to the client device via the network.
In one embodiment, the step of receiving a search query from the client device comprises the step of receiving a digital image. In some embodiments, the step of receiving a search query from the client device comprises the step of receiving text derived from a digital image.
In accordance with another aspect of the invention, a method of serving a web page to a client device based on a printed publication is provided. The method comprises the step of generating a search index from print data. Preferably, the print data are indicative of the printed publication, and the search index logically associates each of a plurality of words and/or phrases in the printed publication with one or more page numbers on which each such word or phrase occurs in the printed publication. The method further comprises the step of receiving a plurality of page number links from an authorized publisher. Preferably, each page number link logically associates a particular page in the printed publication with a network address. Still further, the method comprises the step of receiving a publication query from the client device via a network. The publication query may include a publication identifier and a search term. In addition, the method comprises the step of correlating the publication query to a target page number of the printed publication based on the search index. The method further comprises the steps of retrieving a target network address from the plurality of page number links based on the target page number and transmitting data related to the target network address to the client device via a network.
In one embodiment, the step of generating a search index from print data comprises the step of generating the search index from the print data during a printing process associated with the printed publication. In another embodiment, the step of generating a search index from print data comprises the steps of optically scanning the printed publication to produce a plurality of digitized pages and performing a character recognition process on the digitized pages. In one embodiment, the step of generating a search index from print data comprises the step of selecting a word to include in the plurality of words based on a visual indicator associated with the word. In such an instance, the step of selecting a word to include in the plurality of words may comprise the step of selecting the word based on at least one of a font type, a font style, a font size, a graphic indicator, an icon, and a border associated with the word.
In yet another embodiment, the step of storing a plurality of page number links comprises the step of storing a chapter link. In such an instance, the chapter link preferably logically associates a group of consecutive pages in the printed publication with a network address. The chapter link is preferably stored at a lower order of precedence than a specific page number link. Similarly, the step of storing a plurality of page number links may comprise the step of storing a publication title link. In such an instance, the publication title link preferably logically associates all of the pages in the printed publication with a network address. The publication title link is preferably stored at a lower order of precedence than any chapter link(s). Still further, the step of storing a plurality of page number links may comprise the step of storing a publisher link. In such an instance, the publisher link preferably logically associates all the pages in a first printed publication and all the pages in a second printed publication with a network address. The publisher link is preferably stored at a lower order of precedence than any publication title link(s).
In one embodiment, the step of receiving a publication query from the client device comprises the step of receiving at least one of a publication title, a page number, a registered phrase, and a foreign language indicator. In one embodiment, the step of transmitting data related to the target network address comprises the step of transmitting at least one of a redirection message, web page data, hyperlink data, and a digital version of a second printed publication.
In accordance with yet another aspect of the invention, an apparatus for serving a web page to a client device based on a printed publication is provided. The apparatus comprises a memory device storing a search index generated from print data used during a printing process associated with the printed publication. The print data are preferably indicative of the printed publication. The memory device also stores a plurality of links. Each link preferably logically associates an index entry from the search index with a network address. The apparatus also comprises a network receiver structured to receive a query from the client device via a network and a network transmitter structured to transmit data related to the target network address to the client device via the network. Still further, the apparatus comprises a controller operatively coupled to the memory device, the network receiver, and the network transmitter. The controller is preferably structured to correlate the query to the target network address based on the search index and the plurality of links. The controller is also preferably structured to cause the network transmitter to transmit the data related to the target network address to the client device via the network in response to the query.
In one embodiment, the apparatus further comprises an optical scanner structured to convert the printed publication into a bit map and an optical character recognition system structured to convert the bit map into the print data.